package cn.myfirefly.moming.integrate.entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.GenericGenerator;

import cn.myfirefly.core.entity.BasePO;

/**
 * (mm_work_calendar)
 * 
 * @author myfirefly
 * @version 1.0.0 2016-10-13
 */
@Entity
@Table(name = "mm_work_calendar")
public class MMWorkCalendar extends BasePO implements java.io.Serializable {
    /** 版本号 */
    private static final long serialVersionUID = -8046473512190417187L;
    
    /**  */
    private Integer workCalendarSn;
    
    /**  */
    private String year;
    
    /** 日期种类0工作日1非工作日 */
    private String dateType;
    
    /** 日期值 */
    private Date dateValue;
    
    /** 备注 */
    private String mark;
    
    /**
     * 获取
     * 
     * @return 
     */
    @Id
    @GeneratedValue(generator = "idGenerator")
    @GenericGenerator(name = "idGenerator", strategy = "native")
    @Column(name = "work_calendar_sn", unique = true, nullable = false, length = 10)
    public Integer getWorkCalendarSn() {
        return this.workCalendarSn;
    }
     
    /**
     * 设置
     * 
     * @param workCalendarSn
     *          
     */
    public void setWorkCalendarSn(Integer workCalendarSn) {
        this.workCalendarSn = workCalendarSn;
    }
    
    /**
     * 获取
     * 
     * @return 
     */
    @Column(name = "year", nullable = true, length = 10)
    public String getYear() {
        return this.year;
    }
     
    /**
     * 设置
     * 
     * @param year
     *          
     */
    public void setYear(String year) {
        this.year = year;
    }
    
    /**
     * 获取日期种类0工作日1非工作日
     * 
     * @return 日期种类0工作日1非工作日
     */
    @Column(name = "date_type", nullable = true, length = 1)
    public String getDateType() {
        return this.dateType;
    }
     
    /**
     * 设置日期种类0工作日1非工作日
     * 
     * @param dateType
     *          日期种类0工作日1非工作日
     */
    public void setDateType(String dateType) {
        this.dateType = dateType;
    }
    
    /**
     * 获取日期值
     * 
     * @return 日期值
     */
    @Temporal(TemporalType.DATE)
    @Column(name = "date_value", nullable = true)
    public Date getDateValue() {
        return this.dateValue;
    }
     
    /**
     * 设置日期值
     * 
     * @param dateValue
     *          日期值
     */
    public void setDateValue(Date dateValue) {
        this.dateValue = dateValue;
    }
    
    /**
     * 获取备注
     * 
     * @return 备注
     */
    @Column(name = "mark", nullable = true, length = 500)
    public String getMark() {
        return this.mark;
    }
     
    /**
     * 设置备注
     * 
     * @param mark
     *          备注
     */
    public void setMark(String mark) {
        this.mark = mark;
    }
}